using System;
using System.Collections.Generic;
using System.Text;
using EYDIngenieria.ERP.ObjetosDeNegocio.Dominio;
using Castle.ActiveRecord;
using NHibernate.Expression;

namespace EYDIngenieria.ERP.ObjetosDeNegocio.Repositorio
{
   public  class RepositorioProveedor
    {
        public void Agregar(Proveedor p)
        {
            p.Create();
        }

        public Proveedor[] Listar()
        {
            ICriterion[] query = { Expression.Eq("Activo", true) };
            Order[] sort = { Order.Asc("RazonSocial") };
            return Proveedor.FindAll(sort, query);
            //return ActiveRecordBase<Proveedor>.FindAll();
        }

       public void Modificar(Proveedor p)
        {
            p.UpdateAndFlush();
        }

        public void Eliminar(Proveedor p)
        {
            //p.DeleteAndFlush();
            p.Activo = false;
            p.UpdateAndFlush();
        }

       public Proveedor Obtener(int id)
       {
           return Proveedor.Find(id);
       }
    }
}
